Porting the Renew Petri Net Simulator to the Operating System Android
نویسنده
چکیده
This article describes the steps to identify, extract and adapt the core parts of the Renew simulator in order to make them usable on an Android-powered device. As Renew is build in Java and has a plugin-architecture, a few plugins have to be adapted to get a working Petri net simulator for the operating system Android, which applications are widely written in Java. The result of this work is a framework for simulating and using Petri nets in an Android application. To extend the Petri net-based Agent-Oriented Software Engineering (PAOSE, see [1]) approach, to use Petri net-based agents on mobile devices like smartphones and tablet computers, the first step is to develop a Petri net simulator for this type of devices. As Renew is used to create and simulate the agents, its simulation engine has been ported to the operating system Android. Renew (see [2]) is written in Java and Android applications are usually also written in Java (see [3]), so the expenditure to port the application is not large. Furthermore, Renew has a plugin-architecture, which allows to extract the needed core plugins and embed them into an Android application. As a matter of fact, there are only three plugins needed for the simulation engine plus a plugin management system. As Android misses some libraries from a standard Java version, there are some plugins that have to be adapted. The missing libraries are essentially the graphical user interface and the remote method invocation capabilities. Fortunately, the graphical user interface is disconnected from and not referenced in the simulator core plugins. The remote method invocation is encapsulated and can easily be extracted to a new plugin, without a loss of functionality. Some additional minor changes are not further discussed here. With these changes Renew’s simulation engine is able to run on an Android device, using the same codebase as the full Renew. This is an advantage, by having an up-to-date version on the mobile devices. Although the Renew simulation engine can now be used on Android, the start-up of application differs from the way of normal Java applications. This plus a relative huge amount of needed space for the plugins, on a mobile device with limited space for applications, implies several difficulties to create a practical system architecture for Android. Figure 1 shows the envisioned system-architecture. There is one application providing Renew, which contains and distributes the Renew plugin archives to other application, that want to make use of the simulator. To allow application developers an easy use of Renew, three components have been build. The Renew Service as the server and the Prepare Renew Activities as clients communicate at application start-up and automatically start the Renew simulation engine. The Renew Activity is a convenient extension of the Prepare Renew Activity for easy control of the simulation engine. To develop a new application, using the simulation engine, the developer has to extend the Renew activity and make use of its control functions. To reduce the use of disk space and to ensure an easy update there is one application providing Renew for a couple of applications, which use the Renew simulator. Fig. 1. System architecture showing an Android application, which is able to integrate Petri nets into application development As a result the simulation engine of Renew is used to create a framework for Android applications, allowing them to take advantage of developing Petri nets instead of normal code, if it is useful. This prototypical implementation is the first step to extend the PAOSE approach into the mobile world of smartphones.
منابع مشابه
Modeling and Performance Evaluation of Energy Consumption in S-MAC Protocol Using Generalized Stochastic Petri Nets
One of the features of wireless sensor networks is that the nodes in this network have limited power sources. Therefore, assessment of energy consumption in these networks is very important. What has been common practice has been the use of traditional simulators to evaluate the energy consumption of the nodes in these networks. Simulators often have problems such as fluctuating output values i...
متن کاملImageNetDiff: A Visual Aid to Support the Discovery of Differences in Petri Nets
In this paper we propose a method and present a tool as plugin for Renew that supports the process of discovery of differences in possibly conflicting versions of Petri net code. The method uses the image representaion of the net graph and compares the pixels of the exported Petri nets. The tool uses the image processing of ImageMagick. An open source graphical tool kit, which is available on a...
متن کاملFormal approach on modeling and predicting of software system security: Stochastic petri net
To evaluate and predict component-based software security, a two-dimensional model of software security is proposed by Stochastic Petri Net in this paper. In this approach, the software security is modeled by graphical presentation ability of Petri nets, and the quantitative prediction is provided by the evaluation capability of Stochastic Petri Net and the computing power of Markov chain. Each...
متن کاملPetri Net Simulation as a Service
This paper presents an approach to integrating a Petri net simulator into a service-oriented simulation architecture in order to provide on demand simulation as a service. As a concrete example the simulation tool Renew is wrapped as a service and used to simulate a sample traffic control system represented as a Petri net model that is able to adjust its parameters via reflective simulation in ...
متن کاملTime Management Approach on a Discrete Event Manufacturing System Modeled by Petri Net
Discrete event system, Supervisory control, Petri Net, Constraint This paper presents a method to manage the time in a manufacturing system for obtaining an optimized model. The system in this paper is modeled by the timed Petri net and the optimization is performed based on the structural properties of Petri nets. In a system there are some states which are called forbidden states an...
متن کامل